A Version of Parallel Odd-Even Sorting Algorithm Implemented in CUDA Paradigm
نویسندگان
چکیده
Sorting data is an important problem for many applications. Parallel sorting is a way to improve sorting performance using more nodes or threads e.g. dividing data in more nodes and perform sorting in each node simultaneously or including more threads in process of sorting. It was experimented with one type of those sorting algorithms, namely the well-known sorting algorithms called Odd-Even sort. This paper describes a modification of the above mentioned algorithm. Namely, the algorithm modification consists in the ability to work with the blocks of elements instead of working with individual elements. This modification is done with the idea to make it in a closer form for use of the CUDA technology. Both theoretical and experimental analysis of Odd-Even sort algorithm together with its parallel implementation is done. For experimental purpose, a GeForce GT 645M with 2 GB memory is used. The programming language C++ with CUDA 7.0 paradigm is utilized to implement Odd-Even algorithm and the results indicated that sorting of integers in CUDA environment are dozens of times faster.
منابع مشابه
A Practical Performance Comparison of Parallel Sorting Algorithms on Homogeneous Network of Workstations
Three parallel sorting algorithms have been implemented and compared in terms of their overall execution time. The algorithms implemented are the odd-even transposition sort, parallel merge sort and parallel rank sort. A homogeneous cluster of workstations has been used to compare the algorithms implemented. The MPI library has been selected to establish the communication and synchronization be...
متن کاملComparison of parallel sorting algorithms
In our study we implemented and compared seven sequential and parallel sorting algorithms: bitonic sort, multistep bitonic sort, adaptive bitonic sort, merge sort, quicksort, radix sort and sample sort. Sequential algorithms were implemented on a central processing unit using C++, whereas parallel algorithms were implemented on a graphics processing unit using CUDA platform. We chose these algo...
متن کاملOdd-even, compare-exchange parallel sorting
We present a parallel sorting algorithm and its proof which sorts a sequence of n elements in time O(logz n) with n/2 processors on an EREW-PRAM computational model. A sorting network directly implements the algorithm using O(n .log n)PEs. The algorithm is based on the elementary Compare-Exchange operation and has the advantage that it does not require a powerful computational model, uses the l...
متن کاملOn Batcher's Merge Sorts as Parallel Sorting Algorithms
In this paper we examine the average running times of Batcher's bitonic merge and Batcher's odd-even merge when they are used as parallel merging algorithms. It has been shown previously that the running time of odd-even merge can be upper bounded by a function of the maximal rank diierence for elements in the two input sequences. Here we give an almost matching lower bound for odd-even merge a...
متن کاملThe implementation and optimization of Bitonic sort algorithm based on CUDA
This paper describes in detail the bitonic sort algorithm,and implements the bitonic sort algorithm based on cuda architecture.At the same time,we conduct two effective optimization of implementation details according to the characteristics of the GPU,which greatly improve the efficiency. Finally,we survey the optimized Bitonic sort algorithm on the GPU with the speedup of quick sort algorithm ...
متن کامل